<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:tns="http://tempuri.org/" elementFormDefault="qualified" targetNamespace="http://tempuri.org/" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:import schemaLocation="http://localhost:46881/WCFUsers.svc?xsd=xsd2" namespace="http://schemas.datacontract.org/2004/07/Common" />
  <xs:import schemaLocation="http://localhost:46881/WCFUsers.svc?xsd=xsd1" namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
  <xs:import schemaLocation="http://localhost:46881/WCFUsers.svc?xsd=xsd5" namespace="http://schemas.datacontract.org/2004/07/Common.Views" />
  <xs:import schemaLocation="http://localhost:46881/WCFUsers.svc?xsd=xsd6" namespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" />
  <xs:element name="Register">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q1="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="newUser" nillable="true" type="q1:User" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="RegisterResponse">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="GetRole">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="roleId" type="xs:int" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetRoleResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q2="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="GetRoleResult" nillable="true" type="q2:Role" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="AllocateRole">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q3="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="u" nillable="true" type="q3:User" />
        <xs:element xmlns:q4="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="r" nillable="true" type="q4:Role" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="AllocateRoleResponse">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="IsAuthenticationValid">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="username" nillable="true" type="xs:string" />
        <xs:element minOccurs="0" name="password" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="IsAuthenticationValidResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="IsAuthenticationValidResult" type="xs:boolean" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetCountries">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="GetCountriesResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q5="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="GetCountriesResult" nillable="true" type="q5:ArrayOfCountry" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="PlaceComment">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q6="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="c" nillable="true" type="q6:Comment" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="PlaceCommentResponse">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="PlaceRating">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q7="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="r" nillable="true" type="q7:Rating" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="PlaceRatingResponse">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="GetUserOrders">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="username" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetUserOrdersResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q8="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="GetUserOrdersResult" nillable="true" type="q8:ArrayOfOrder" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="AddToCart">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q9="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="cart" nillable="true" type="q9:ShoppingCart" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="AddToCartResponse">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="DeleteCart">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="scID" type="xs:int" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="DeleteCartResponse">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="GetNoOfItemsInShoppingCart">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="username" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetNoOfItemsInShoppingCartResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="GetNoOfItemsInShoppingCartResult" type="xs:int" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetProductIDInShoppingCart">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="productID" type="xs:int" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetProductIDInShoppingCartResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="GetProductIDInShoppingCartResult" type="xs:int" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetShoppingCartByID">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="id" type="xs:int" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetShoppingCartByIDResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q10="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="GetShoppingCartByIDResult" nillable="true" type="q10:ShoppingCart" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ViewShoppingCart">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="username" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ViewShoppingCartResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q11="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="ViewShoppingCartResult" nillable="true" type="q11:ShoppingCart" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ListShoppingCart">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="username" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ListShoppingCartResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q12="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="ListShoppingCartResult" nillable="true" type="q12:ArrayOfShoppingCart" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="AddOrder">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q13="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="newOrder" nillable="true" type="q13:Order" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="AddOrderResponse">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="AddOrderDetails">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q14="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="od" nillable="true" type="q14:OrderDetail" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="AddOrderDetailsResponse">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="GetMainMenus">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="roleId" type="xs:int" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetMainMenusResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q15="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="GetMainMenusResult" nillable="true" type="q15:ArrayOfMenu" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetUserRoles">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="username" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetUserRolesResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q16="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="GetUserRolesResult" nillable="true" type="q16:ArrayOfRole" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetOrderDetails">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q17="http://schemas.microsoft.com/2003/10/Serialization/" minOccurs="0" name="oID" type="q17:guid" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetOrderDetailsResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q18="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="GetOrderDetailsResult" nillable="true" type="q18:ArrayOfOrderDetail" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetUser">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="username" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetUserResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q19="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="GetUserResult" nillable="true" type="q19:User" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetOrderDetailsByOrderID">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q20="http://schemas.microsoft.com/2003/10/Serialization/" minOccurs="0" name="oID" type="q20:guid" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetOrderDetailsByOrderIDResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q21="http://schemas.datacontract.org/2004/07/Common.Views" minOccurs="0" name="GetOrderDetailsByOrderIDResult" nillable="true" type="q21:ArrayOfUserOrderDetailsView" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="DoesUsernameExist">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="username" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="DoesUsernameExistResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="DoesUsernameExistResult" type="xs:boolean" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="DoesEmailExist">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="email" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="DoesEmailExistResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="DoesEmailExistResult" type="xs:boolean" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="HasUserPlacedComment">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="username" nillable="true" type="xs:string" />
        <xs:element minOccurs="0" name="pID" type="xs:int" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="HasUserPlacedCommentResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="HasUserPlacedCommentResult" type="xs:boolean" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetRatingsOptions">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="GetRatingsOptionsResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q22="http://schemas.microsoft.com/2003/10/Serialization/Arrays" minOccurs="0" name="GetRatingsOptionsResult" nillable="true" type="q22:ArrayOfint" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="DisplayShoppingCart">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="username" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="DisplayShoppingCartResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q23="http://schemas.datacontract.org/2004/07/Common.Views" minOccurs="0" name="DisplayShoppingCartResult" nillable="true" type="q23:ArrayOfShoppingCartView" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="SubmitFault">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q24="http://schemas.datacontract.org/2004/07/Common" minOccurs="0" name="uf" nillable="true" type="q24:UserFault" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="SubmitFaultResponse">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="GetFaultDetailsForUser">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="username" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetFaultDetailsForUserResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q25="http://schemas.datacontract.org/2004/07/Common.Views" minOccurs="0" name="GetFaultDetailsForUserResult" nillable="true" type="q25:ArrayOfFaultDetailsView" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetFaultDetailsForAdmin">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="username" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetFaultDetailsForAdminResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q26="http://schemas.datacontract.org/2004/07/Common.Views" minOccurs="0" name="GetFaultDetailsForAdminResult" nillable="true" type="q26:ArrayOfFaultDetailsView" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetFilteredFaultDetailsForUser">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="username" nillable="true" type="xs:string" />
        <xs:element minOccurs="0" name="fromDate" nillable="true" type="xs:string" />
        <xs:element minOccurs="0" name="toDate" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetFilteredFaultDetailsForUserResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q27="http://schemas.datacontract.org/2004/07/Common.Views" minOccurs="0" name="GetFilteredFaultDetailsForUserResult" nillable="true" type="q27:ArrayOfFaultDetailsView" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetFaultDetailsForPDF">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="username" nillable="true" type="xs:string" />
        <xs:element minOccurs="0" name="ticketNo" type="xs:int" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetFaultDetailsForPDFResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q28="http://schemas.datacontract.org/2004/07/Common.Views" minOccurs="0" name="GetFaultDetailsForPDFResult" nillable="true" type="q28:ArrayOfFaultDetailsView" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetOrderDetailsByOrderIDandProductID">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q29="http://schemas.microsoft.com/2003/10/Serialization/" minOccurs="0" name="oID" type="q29:guid" />
        <xs:element minOccurs="0" name="pID" type="xs:int" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetOrderDetailsByOrderIDandProductIDResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q30="http://schemas.datacontract.org/2004/07/Common.Views" minOccurs="0" name="GetOrderDetailsByOrderIDandProductIDResult" nillable="true" type="q30:ArrayOfUserOrderDetailsView" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>